package com.plian.system.vo.im;

import com.plian.system.entity.im.ProjectInfo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * @description:
 * @author: gangan
 * @create: 2020-04-23 14:09
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "项目信息VO", description = "项目信息VO")
public class ProjectInfoVO extends ProjectInfo {
    private static final long serialVersionUID = 1L;

    /**
     * 单位名称
     */
    private String companyName;
    /**
     * 项目性质
     */
    private String projectNatureName;

    /**
     * 投资企业
     */
    private String investmentCompanyName;

    /**
     * 投资企业层级
     */
    private String investmentCompanyRankName;

    private String createUserName;

    private String updateUserName;

    /**
     * 全年计划--从年度新增股权投资（固定资产投资）获取
     */
    private BigDecimal planTotalInvestment;
    /**
     * 本该至上月底完成数--从本年该项目已执行月份投资额加总查
     */
    private BigDecimal shouldLastCompleteInvestment;

    /**
     * 本该上年度实际投资-从月报报表实际投资汇总查
     */
    private BigDecimal shouldCompleteInvestmentLastYear;

    /**
     * 本该已完成投资累计总额--从自项目启动以来至本年初各月度报表实际投资金额总和汇总
     */
    private BigDecimal shouldCommpleteInvestmentTotal;

    private String subordinateGroupName;

    private String fillingUnitName;

    private String fundSourceName;

    @ApiModelProperty(value = "项目状态：1续建 2新建 3谋划", required = true)
    private String projectStatusName;

    @ApiModelProperty(value = "投资性质 1代表股权投资，2代表资产投资", required = true)
    private String investmentCategoryName;

    @ApiModelProperty(value = "项目属性 1自营项目（主业项目)、2自营项目（培育业务项目）、3自营项目（非主业项目）、4政府性项目", required = true)
    private String projectCategoryName;

    @ApiModelProperty(value = "负面清单类型：1监管类 2禁止类", required = true)
    private String negativeTypeName;

    @ApiModelProperty(value = "投资地域：1境内 2境外", required = true)
    private String investmentRegionName;

    @ApiModelProperty(value = "是否与其他国资合作:1央企 2省企 3宁波市国企 4否", required = true)
    private String isCooperationName;

    @ApiModelProperty(value = "是否可用 1否2是", required = true)
    private String isAvailableName;

    @ApiModelProperty(value = "是否宁波市域投资：1否2是", required = true)
    private String isLocalName;

    @ApiModelProperty(value = "是否战略新兴产业：1否2是", required = true)
    private String isStrategicName;

    @ApiModelProperty(value =" 是否本年计划内投资项目：1否2是", required = true)
    private String isPlanName;

    @ApiModelProperty(value = "是否是负面清单项目 1否2是", required = true)
    private String isNegativeProjectName;

    @ApiModelProperty(value = "是否重点项目/是否基金投资：1否2是", required = true)
    private String isImportantName;


    //新增
    @ApiModelProperty(value = "投资属性")
    private String investmentAttributeName;
    @ApiModelProperty(value = "选择投资属性为主业之后选择  投资属性主业详情主业：1核心主业 2培育主业", required = true)
    private String investmentAttributeItemName;
    @ApiModelProperty(value = "项目类型  字典配置189", required = true)
    private String projectTypeName;

    private String anticipateStartTimeStr;
    private String planFinishDateStr;





    @ApiModelProperty(value = "是否为按本企业投资管理制度确定的重大投资项目（1否，2是）")
    private String  isKeynoteProjectName;
    @ApiModelProperty(value = "是否为特别监管类项目投资1否，2是")
    private String  isSpecialSuperviseName;

    @ApiModelProperty(value = "是否主业投资（1否，2是）")
    private String  isMainBusinessName;
    @ApiModelProperty(value = "是否于去年一季度开工建设（1否，2是）")
    private String  isLastYearFirstQuarterName;
    @ApiModelProperty(value = "是否是去年省重点建设项目（1否，2是）")
    private String  isLastProvinceKeynoteName;
    @ApiModelProperty(value = "是否是去年市重点建设项目（1否，2是）")
    private String  isLastCityKeynoteName;
    @ApiModelProperty(value = "是否属于技改项目（1否，2是）")
    private String  isTechnologyChangeName;
    private String investmentRegionJN;
    private String investmentRegionJW;
    private String isLocalSN;
    private String isLocalSW;
    private Integer countNum;

}
